As is known, the design of circuits for reading nonvolatile memory cells is currently affected by different factors, which are often in competition with one another. In particular, these circuits must be able to work effectively with supply voltages that vary within a wide range of values. In fact, reading circuits must be compatible with supply voltages that are very low (for example, 2.5 V), necessary for minimizing energy consumption, but, at the same time, they must be able to work with high supply voltages in order to guarantee fast access times (lower than 100 ns). In addition, they should have overall dimensions as reduced as possible in order to favor large scale integration.
A further constraint is represented by the fact that present fabrication technologies do not enable perfectly identical cell arrays to be made, but, in particular, there exists a dispersion of the values of the threshold voltages with respect to a nominal value. Consequently, in a memory array, the most erased cells will have a threshold voltage slightly higher than 0.5 V, whilst the threshold voltage of the least erased cells will be approximately 2.5 V. Since generally the read voltage is equal to the supply voltage, the dispersion of the threshold voltages raises problems when the supply voltage is low (e.g., 2.5 V, as mentioned above). In this case, in fact, the least erased cells conduct a very low current and may be interpreted as written cells, thus causing reading errors. In addition, very low current levels require long reading times, which are unacceptable.
One solution for the described reading problems is given by European Patent Application EP-A-0 814 482 entitled "Method and Circuit for Generating a Reference Signal for Reading a Nonvolatile Memory", filed on Jun. 18, 1996 in the name of the present applicant.
The above known solution will be described hereinafter for a better understanding of the problems met by the present invention, with reference to FIGS. 1 and 2, showing a reading circuit for nonvolatile memory cells and, respectively, plots of currents generated by this circuit. In FIG. 1, a reading circuit 1 comprises an array branch 2, a reference branch 3, a current-to-voltage converter 4, and a biasing and decoding circuit 5.
The array branch 2 in turn comprises a memory cell 7, for example of the flash type, belonging to a memory array 6 and connected to an array bit line 9 and, with a gate terminal, to a charge pump 10.
The charge pump 10 supplies an output voltage V.sub.O linked to the supply voltage V.sub.DD by the following relation: EQU V.sub.O =K.sub.1 +V.sub.DD (1)
where K.sub.1 is a constant.
The reference branch 3 comprises a first NMOS transistor 13, connected, with a drain terminal, via a reference line 14, to the decoding and biasing circuit 5 and, with a gate terminal, to a second NMOS transistor 18, diode connected, having its drain terminal connected to a reference generator 15, which supplies at the output a current I.sub.R. The first NMOS transistor 13 and the second NMOS transistor 18 form a first current mirror circuit 11 and have equal shape factors (W/L).sub.G, wherein W is the channel width and L is the channel length.
An array load 16, including a PMOS transistor in diode configuration, and a reference load 17, which belong to the current-to-voltage converter 4, form a second current mirror circuit 19 and are connected, via the biasing and decoding circuit 5, to the array bit line 9 and, respectively, to the reference line 14.
In addition, the reference load 17 has a shape factor (W/L).sub.R greater than the shape factor (W/L).sub.F of the array load 16. In particular, these shape factors are linked by the following relation: EQU (W/L).sub.R =N(W/L).sub.F (2)
where N is an integer, for example 8, representing the current amplification of the second current mirror circuit 19.
Finally, a comparator 20, having a first input and a second input connected, respectively, with the array load 16 and with the reference load 17, has an output 21, defining the output of the reading circuit 1.
Operation of the device is as follows.
During reading, the reference current I.sub.R flowing in the second NMOS transistor 18 is mirrored in the first NMOS transistor 13. As described in the European Patent Application referred to previously, the reference current I.sub.R is obtained as a linear combination of two currents I.sub.1 and I.sub.2, carried by two reference cells not shown and having threshold voltages V.sub.T1 and, respectively, V.sub.T2. In detail, the reference current I.sub.R is given by the following relation: EQU I.sub.R =(I.sub.1 -I.sub.2)+NI.sub.2 (3)
where N is the same number as that appearing in Eq. (2).
Since the reference cells (not shown) in the reference generator 15 are biased so as to work in the linear region, approximate values of the currents I.sub.1 and I.sub.2 are given by the following expressions: EQU I.sub.1 =G(V.sub.GS1 -V.sub.T1) (4) EQU I.sub.2 =G(V.sub.GS2 -V.sub.T2) (5)
where V.sub.GS1 and V.sub.GS2 are the respective gate-to-source voltages of the reference cells, and G is their transconductance, which is constant. In addition, the gate-to-source voltages V.sub.GS1 and V.sub.GS2, during reading, are equal to the supply voltage V.sub.DD of the reading circuit 1.
Substituting Eq. (4) and Eq. (5) into Eq. (3) and setting V.sub.GS1 =V.sub.GS2 =V.sub.DD, the following relations are obtained: EQU I.sub.R =G(V.sub.DD -V.sub.T1) (6a) EQU I.sub.R =G(V.sub.DD -V.sub.T1)-G(V.sub.DD -V.sub.T2)+NG(V.sub.DD -V.sub.T2) (6b)
In particular, Eq. (6a) is valid for V.sub.T1 &lt;V.sub.DD &lt;V.sub.T2, whilst Eq. (6b) is valid for V.sub.DD &gt;V.sub.T2. As illustrated in FIG. 2, the plot of the reference current I.sub.R, expressed by relations (6a) and (6b) has a first rectilinear portion when the supply voltage V.sub.DD is between the threshold voltages V.sub.T1 and V.sub.T2, and a second rectilinear portion, with a slope equal to NG, for values of V.sub.DD greater than V.sub.T2.
The reference current I.sub.R is compared with a current flowing in the reference load 17, the value of which is determined by the current flowing in the memory cell 7. In fact, the current I.sub.F flowing in the memory cell 7 and in the array load 16 is mirrored, amplified by a factor N, at the reference load 17. In addition, the charge pump 10 supplies to the gate terminal of the memory cell 7 a voltage equal to the supply voltage V.sub.DD increased by a constant boosting voltage V.sub.B. As a result, if the memory cell 7 is written, the written cell current I.sub.W flowing in the reference load 17 is given by the following expression: EQU I.sub.W =NG(V.sub.DD +V.sub.B -V.sub.TW) (7)
where V.sub.TW is the threshold voltage of a written cell. If, instead, the cell is erased, the erased cell current I.sub.E flowing in the reference load 17 is given by the following expression: EQU I.sub.E =NG(V.sub.DD +V.sub.B -V.sub.TE) (8)
where V.sub.TE is the threshold voltage of an erased cell.
Expressions (7) and (8) may be rewritten as follows: EQU I.sub.W =NG[V.sub.DD -(V.sub.TW -V.sub.B)] (9) EQU I.sub.E =NG[V.sub.DD -(V.sub.TE -V.sub.B)] (10)
Consequently, the transcharacteristics I.sub.W -V.sub.DD and I.sub.E -V.sub.DD, given in FIG. 2, are similar to those of cells identical to the memory cell 7, but having threshold voltages V.sub.TW -V.sub.B and V.sub.TE -V.sub.B, respectively. In particular, the written cell current I.sub.W and the reference current I.sub.R (for V.sub.DD &gt;V.sub.T2) have parallel plots, with a slope equal to NG. This proves advantageous in so far as no top limit is set to the value of the supply voltage V.sub.DD, which can consequently be chosen so as to optimize the reading times.
Furthermore, when the reading circuit 1 is supplied with a low supply voltage V.sub.DD, the value of the reference current I.sub.R is given by expression (6a). The minimum value theoretically acceptable for the supply voltage V.sub.DD, given by the intersection between the transcharacteristics I.sub.R -V.sub.DD and I.sub.E -V.sub.DD, is thus represented by the threshold voltage V.sub.TE, decreased by the value of the boosting voltage V.sub.B.
The solution described above operates properly for charge pumps of the type referred to above, which generate an output voltage according to relation (1), but presents a number of drawbacks when different types of pumps are used, for example, those of the single shot type, which are preferred in a number of applications on account of the zero consumption in stand-by and of the contained setting times. In fact, as is known, the output voltage V.sub.O of a single shot charge pump is given by the relation EQU V.sub.O =K.sub.B V.sub.DD (11)
where K.sub.B represents the boosting efficiency. In the reading circuit 1, the output voltage V.sub.O of the charge pump 10 is equal to the gate-to-source voltage of the memory cell 7. In this case, then, the written cell current I.sub.W and the erased cell current I.sub.E are expressed, respectively, by the following relations: EQU I.sub.W =NG(K.sub.B V.sub.DD -V.sub.TW) (12) EQU I.sub.E =NG(K.sub.B V.sub.DD -V.sub.TE) (13)
thus, EQU I.sub.W =NK.sub.B G(V.sub.DD -V.sub.TW /K.sub.B) (14) EQU I.sub.E =NK.sub.B G(V.sub.DD -V.sub.TE /K.sub.B) (15)
The transcharacteristics I.sub.W -V.sub.DD and I.sub.E -V.sub.DD are therefore equivalent to those of reference cells having threshold voltages equal to V.sub.TW /K.sub.B and, respectively, V.sub.TE /K.sub.B, and a slope equal to NK.sub.B G, as shown in FIG. 3. Consequently, the transcharacteristics I.sub.W -V.sub.DD and I.sub.R -V.sub.DD are no longer parallel and present a point of intersection A which represents a maximum value V.sub.DDMAX of the supply voltage V.sub.DD. The expression of the maximum value V.sub.DDMAX may be obtained by equating relations (6b) and (14): EQU V.sub.DDMAX =[N(V.sub.TW -V.sub.T2)+V.sub.T2 -V.sub.T1 ]/[N(K.sub.B -1)] (16)
Assuming typical values, such as V.sub.TW =4.5 V, V.sub.T1 =1.25 V, V.sub.T2 =2.5 V, K.sub.B =1.6 and N=8, a maximum value V.sub.DDMAX of 3.6 V is obtained, which is too low and is not compatible with currently required standards.